HaaS 600 EC600S开发板

本文介绍HaaS 600 EC600S开发板的产品规格和使用说明。

概述

HaaS 600 Kit是一款基于HaaS 600系列模组评估的高性价比开发板。可应用于共享控制、金融支付、智能语音、泛工业等场景的智能硬件产品开发。

HaaS600 Kit 套件包含以下物料:

  • 开发板x1

  • micro-USB线缆x1

  • 5V/2A电源适配器x1

  • 4G天线x1

  • GPS天线x1

image

系统环境

连接设备

将开发电脑跟设备的调试/用户串口通过MicroUSB连接,连接后,将在PC设备管理器中出现两个串口,分别用于调试和用户串口输入输出。

image

安装USB转串口驱动

安装完成之后,在设备管理器中可以看到如下虚拟串口:

  • Windows

    说明
    • Enhanced COM Port为日志串口。

    • Standard COM Port为用户串口。

  • macOS

    说明
    1. 不同电脑生成的串口号和名称不一样,以实际生成的为准。

    2. 生成的两个串口,一个是debug串口(查看运行日志,只读),另一个是用户串口(JavaScript交互式解释器或其他用途)。

开发工具

轻应用开发使用一套命令行工具来管理和推送应用脚本到设备。

下载命令行工具。

将命令行工具解压到工作目录,如下所示对应文件。

├── amp             # 命令行工具
├── app             # 示例代码(hello world)
│   ├── app.json
│   └── app.js
└── bindings.node   # 本地更新库

轻应用示例

查看设备连接状态

在命令行工具下使用如下命令查看设备连接状态。

./amp.exe seriallist
COM194
COM195
说明

如果返回值和设备管理器中生成的串口号一致,则设备连接和命令行工具运行正常。

命令行工具默认示例代码运行hello world程序,此处使用LED Blink介绍轻应用示例。

使用app.jsapp.json文件替换命令行工具示例代码目录下的同名文件,如下所示。

  • LED Blinkapp.json

    {
        "version": "1.0.0",
        "io": {
            "D13": {
                "type": "GPIO",
                "port": 33,
                "dir": "output",
                "pull": "pulldown"
            }
        },
        "debugLevel": "DEBUG"
    }
  • LED Blink app.js

    import * as gpio from 'gpio';
    
    var led = gpio.open({
      id: 'D13'
    });
    
    var vol = 0;
    
    setInterval(() => {
    	vol = 1 - vol;
      
    	led.writeValue(vol);
    	console.log('gpio: led set value ' + vol);
    	
    	vol = led.readValue();
    	console.log('gpio: led get value ' + vol);	
    }, 1000);
    

本地更新

  • 打开命令行工具。

  • 推送脚本到设备。

    • 执行推送命令。

      /* app是JavaScript应用脚本目录 */
      /* COMXX是用户串口号,此处填写Standard COM Port对应的端口号 */
      /* -b 115200 HaaS600串口波特率为115200 */
      
      ./amp.exe seriallist
      COM194
      COM195
      
      ./amp.exe serialput ./app COM194 -b 115200
      说明

      一般情况下,应用下载串口是Silicon Labs Dual CP2105 USB to UART Bridge:Standard COM Port

    • 复位开发板。

    • 等待脚本传输完成,打开日志串口观察脚本运行情况。

  • 运行效果如下图所示。

    image

附录

硬件资源介绍

image

硬件资源映射表

功能/接口

PIN/IO/资源映射

轻应用port配置

I2C0

SDA(IO50) SCL(IO49)

0

ADC0

A0

0

ADC1

A1

1

UART0

默认板级log打印

0

UART1

TXD(IO54)

RXD(IO53)

1

UART2

TXD(IO52)  

RXD(IO51)

2

GPIO

IO51

D0

IO52

D1

IO17

D2

IO16

D3

IO59

D4

IO121

D5

IO54

D6

IO53

D7

IO124

D8

IO122

D9

IO34

D10

IO36

D11

IO35

D12

IO33

D13

IO57

D14

IO0

D15

IO1

D16

SPI0

MISO(IO35)

MOSI(IO36)

SCK(IO33)

0

app.json参考示例

{
  "io": {
    "I2C0": {
      "type": "I2C",
      "port": 0,
      "addrWidth": 7,
      "freq": 100000,
      "mode": "master",
      "devAddr": 118
    },
    "ADC0": {
      "type": "ADC",
      "port": 0,
      "sampling": 12000000
    },
    "ADC1": {
      "type": "ADC",
      "port": 1,
      "sampling": 12000000
    },
    "UART1":{
      "type":"UART",
      "port":1,
      "dataWidth":8,
      "baudRate":115200,
      "stopBits":1,
      "flowControl":"disable",
      "parity":"none"
    },
    "UART2":{
      "type":"UART",
      "port":2,
      "dataWidth":8,
      "baudRate":115200,
      "stopBits":1,
      "flowControl":"disable",
      "parity":"none"
    },
    "SPI0":{
      "type":"SPI",
      "port":0,
      "mode":"master",
      "freq":3250000
    },
    "D0": {
      "type": "GPIO",
      "port": 51,
      "dir": "output",
      "pull": "pulldown"
    },
		"D1": {
      "type": "GPIO",
      "port": 52,
      "dir": "output",
      "pull": "pulldown"
    },
    "D2": {
      "type": "GPIO",
      "port": 17,
      "dir": "output",
      "pull": "pulldown"
    },
    "D3": {
      "type": "GPIO",
      "port": 16,
      "dir": "output",
      "pull": "pulldown"
    },
    "D4": {
      "type": "GPIO",
      "port": 59,
      "dir": "output",
      "pull": "pulldown"
    },
    "D5": {
      "type": "GPIO",
      "port": 121,
      "dir": "output",
      "pull": "pulldown"
    },
    "D6": {
      "type": "GPIO",
      "port": 54,
      "dir": "output",
      "pull": "pulldown"
    },
    "D7": {
      "type": "GPIO",
      "port": 53,
      "dir": "output",
      "pull": "pulldown"
    },
    "D8": {
      "type": "GPIO",
      "port": 124,
      "dir": "output",
      "pull": "pulldown"
    },
    "D9": {
      "type": "GPIO",
      "port": 122,
      "dir": "output",
      "pull": "pulldown"
    },
    "D10": {
      "type": "GPIO",
      "port": 34,
      "dir": "output",
      "pull": "pulldown"
    },
    "D11": {
      "type": "GPIO",
      "port": 36,
      "dir": "output",
      "pull": "pulldown"
    },
    "D12": {
      "type": "GPIO",
      "port": 35,
      "dir": "output",
      "pull": "pulldown"
    },
    "D13": {
      "type": "GPIO",
      "port": 33,
      "dir": "output",
      "pull": "pulldown"
    },
    "D14": {
      "type": "GPIO",
      "port": 57,
      "dir": "output",
      "pull": "pulldown"
    },
    "D15": {
      "type": "GPIO",
      "port": 0,
      "dir": "output",
      "pull": "pulldown"
    },
    "D16": {
      "type": "GPIO",
      "port": 1,
      "dir": "output",
      "pull": "pulldown"
    }
  },
  "debugLevel": "DEBUG"
}